package com.eatrip.service.implementation;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.eatrip.bean.ProdottoTipico;
import com.eatrip.dao.ProdottiTipiciDAO;
import com.eatrip.service.ProdottiTipiciService;

@Service
public class ProdottiTipiciServiceImple implements ProdottiTipiciService {
	
	@Autowired
	private ProdottiTipiciDAO prodottiTipiciDAO;
	
	@Override
	@Transactional(readOnly = true)
	public ProdottoTipico getProdottoTipico(int idProdotto) {
		return prodottiTipiciDAO.getProdottoTipico(idProdotto);
	}

	@Override
	@Transactional(readOnly = true)
	public ProdottoTipico getProdottoTipicoByNomeProdotto(String nomeProdotto) {
		return prodottiTipiciDAO.getProdottoTipicoByNomeProdotto(nomeProdotto);
	}

	
	
	@Override
	@Transactional(readOnly = true)
	public ProdottoTipico getRandProdottoTipico() {
		return prodottiTipiciDAO.getRandProdottoTipico();
	}

	@Override
	@Transactional(readOnly = true)
	public List<ProdottoTipico> getAllProdottiTipici(int start,int maxRow) {
		return prodottiTipiciDAO.getAllProdottiTipici(start,maxRow);
	}

	@Override
	@Transactional(readOnly = true)
	public List<ProdottoTipico> getAllProdottiTipiciByIdComune(int idComune) {
		return prodottiTipiciDAO.getAllProdottiTipiciByIdComune(idComune);
	}

	@Override
	@Transactional(readOnly = true)
	public List<ProdottoTipico> getAllProdottiTipiciByIdProvincia(int idProvincia) {
		return prodottiTipiciDAO.getAllProdottiTipiciByIdProvincia(idProvincia);
	}

	@Override
	@Transactional(readOnly = false)
	public void insertProdottoTipico(ProdottoTipico prodottoTipico) {
		prodottiTipiciDAO.insertProdottoTipico(prodottoTipico);
	}

	@Override
	@Transactional(readOnly = false)
	public void updateProdottoTipico(ProdottoTipico prodottoTipico) {
		prodottiTipiciDAO.updateProdottoTipico(prodottoTipico);
	}

	@Override
	@Transactional(readOnly = false)
	public void deleteProdottoTipico(ProdottoTipico prodottoTipico) {
		prodottiTipiciDAO.deleteProdottoTipico(prodottoTipico);
	}

	@Override
	@Transactional(readOnly = false)
	public void deleteProdottoTipicoByIdComune(int idComune) {
		prodottiTipiciDAO.deleteProdottoTipicoByIdComune(idComune);
	}

	@Override
	@Transactional(readOnly = false)
	public void deleteProdottoTipicoByIdProvincia(int idProvincia) {
		prodottiTipiciDAO.deleteProdottoTipicoByIdProvincia(idProvincia);
	}

}
